package com.sn.pw.vo.resp;

import com.baomidou.mybatisplus.annotation.TableField;
import com.gitee.sunchenbin.mybatis.actable.annotation.ColumnComment;
import com.gitee.sunchenbin.mybatis.actable.annotation.ColumnType;
import com.gitee.sunchenbin.mybatis.actable.constants.MySqlTypeConstant;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

@Data
@AllArgsConstructor
@NoArgsConstructor
@Accessors(chain = true)
@ApiModel(value = "OrderResp对象", description = "订单信息")
public class OrderResp {

    @ApiModelProperty("订单日期")
    private Date orderTime;

    @ApiModelProperty("发布日期")
    private Date releaseDate;

    @ApiModelProperty("预计出货日期")
    private Date expectedTime;

    @ApiModelProperty("出通单号")
    private String shippingOrderNumber;

    @ApiModelProperty("订单号")
    private String orderNumber;

    @ApiModelProperty("业务人员")
    private String businessPersonnel;

    @ApiModelProperty("业务部门")
    private String businessDepartment;

    @ApiModelProperty("收货人ID")
    private Long consigneeId;

    @ApiModelProperty("收货人")
    private String consignee;

    @ApiModelProperty("收货人联系电话")
    private String phone;

    @ApiModelProperty("收货地址")
    private String consigneeAddress;

    @ApiModelProperty("产品总体积")
    private BigDecimal productVolume;

    @ApiModelProperty("总方数")
    private BigDecimal totalSquare;

    @ApiModelProperty("备注")
    private String remark;

    @ApiModelProperty("阈值价格")
    private BigDecimal price;

    @ApiModelProperty("取货日期")
    private Date pickupTime;

    @ApiModelProperty("取货地址")
    private String pickupAddress;

    @ApiModelProperty("物流公司ID")
    private Long companyId;

    @ApiModelProperty("物流公司人员ID")
    private Long companyUserId;

    @ApiModelProperty("回执订单id")
    private Long receiptOrderId;

    /**
     * publish status 发布状态
     */
    @ApiModelProperty("发布状态 已发布:Published 未发布:Unpublished")
    private String publishStatus;
    /**
     *竞价状态
     */
    @ApiModelProperty("竞价状态 竞价中: Bidding  竞价成功: Success 竞价失败: Failed")
    private String bidStatus;

    /**
     * Shipping status 发货状态
     */

    @ApiModelProperty("发货状态 待发货: Waiting 运输中: Transit 已到货: Arrived 已签收: Delivered")
    private String shippingStatus;

    @ApiModelProperty("参与竞价公司的信息")
    List<BiddingResp> biddingRespList;
}
